Telegram Group & Telegram Channel
👣 “Cheating the Reaper in Go” от Miguel Young

В этой подробной статье автор показывает, как «обмануть» сборщик мусора Go и создать свой собственный arena-аллокатор на чистом Go, получая существенный прирост производительности.

📌 Что внутри:
- Краткий обзор GC Go: как используются pointer bits и shapes для точного сбора мусора.

- Реализация простого bump-аллокатора Arena, сводящего Alloc к смещению указателя.

- Бенчмарки: до 2×–4× ускорения при малых аллокациях и почти 7× для массивов из 64 элементов ( arena – 7370 MB/s vs new – 2865 MB/s )
mcyoung.xyz
.

- Оптимизация через sync.Pool и финализаторы для повторного использования и ускоренного обнуления памяти.

- Безопасный метод Reset() для мгновенной очистки арены без дорогостоящего выделения заново.

Заготовка примитивного Realloc(), позволяющая расширять последние аллокации «на месте».

Полный код, подробное объяснение и советы по дальнейшим оптимизациям — по ссылке:
https://mcyoung.xyz/2025/04/21/go-arenas/

@golang_books
Please open Telegram to view this post
VIEW IN TELEGRAM



tg-me.com/golang_books/969
Create:
Last Update:

👣 “Cheating the Reaper in Go” от Miguel Young

В этой подробной статье автор показывает, как «обмануть» сборщик мусора Go и создать свой собственный arena-аллокатор на чистом Go, получая существенный прирост производительности.

📌 Что внутри:
- Краткий обзор GC Go: как используются pointer bits и shapes для точного сбора мусора.

- Реализация простого bump-аллокатора Arena, сводящего Alloc к смещению указателя.

- Бенчмарки: до 2×–4× ускорения при малых аллокациях и почти 7× для массивов из 64 элементов ( arena – 7370 MB/s vs new – 2865 MB/s )
mcyoung.xyz
.

- Оптимизация через sync.Pool и финализаторы для повторного использования и ускоренного обнуления памяти.

- Безопасный метод Reset() для мгновенной очистки арены без дорогостоящего выделения заново.

Заготовка примитивного Realloc(), позволяющая расширять последние аллокации «на месте».

Полный код, подробное объяснение и советы по дальнейшим оптимизациям — по ссылке:
https://mcyoung.xyz/2025/04/21/go-arenas/

@golang_books

BY Golang Books




Share with your friend now:
tg-me.com/golang_books/969

View MORE
Open in Telegram


Golang Books Telegram | DID YOU KNOW?

Date: |

Traders also expressed uncertainty about the situation with China Evergrande, as the indebted property company has not provided clarification about a key interest payment.In economic news, the Commerce Department reported an unexpected increase in U.S. new home sales in August.Crude oil prices climbed Friday and front-month WTI oil futures contracts saw gains for a fifth straight week amid tighter supplies. West Texas Intermediate Crude oil futures for November rose $0.68 or 0.9 percent at 73.98 a barrel. WTI Crude futures gained 2.8 percent for the week.

The seemingly negative pandemic effects and resource/product shortages are encouraging and allowing organizations to innovate and change.The news of cash-rich organizations getting ready for the post-Covid growth economy is a sign of more than capital spending plans. Cash provides a cushion for risk-taking and a tool for growth.

Golang Books from kr


Telegram Golang Books
FROM USA